<?php

/**
 * Description of m_memorias
 *
 * @author Níssius Ribas
 */
class m_memorias extends NT_Manager_Controller {

    private $crud;

    public function __construct() {
        parent::__construct();

             $this->checkLogin();
        $this->load->library('grocery_CRUD');
        $this->crud = new grocery_CRUD();  

        if (!$this->nt_manager_permissoes->isValid($this->uri->segment_array() + array("add")))
            $this->crud->unset_add();

        if (!$this->nt_manager_permissoes->isValid($this->uri->segment_array() + array("edit")))
            $this->crud->unset_edit();

        if (!$this->nt_manager_permissoes->isValid($this->uri->segment_array() + array("delete")))
            $this->crud->unset_delete();
                
        if (!$this->nt_manager_permissoes->isValid($this->uri->segment_array() + array("export")))
            $this->crud->unset_export();
        
        $this->crud->unset_print();
    }

    public function index() {

        $this->tabela = 'nt_memorias';
        $this->load->model($this->tabela);
        $this->crud ->set_rules($this->{$this->tabela}->getRules())
                    ->auto_label($this->{$this->tabela}->getRules())
                    ->set_table($this->tabela)
                    ->set_subject("Memória")
                    ->columns('NOME','IMAGEM')
                    ->set_relation("NT_CIDADES_ID","nt_global_cidades","CIDADE")
                    ->set_relation("NT_ESTADOS_ID", "nt_global_estados", "NOME_ESTADO")
                    ->add_tooltip_description('IMAGEM', "<font color='red'><b>Imagem</b></font><br>Formato JPG<br>Tamanho deve ser 1024 x 1024<Br>")
                    ->set_field_upload('IMAGEM','assets/uploads/nt_memorias')
                    ->unset_texteditor('DESCRICAO')
                    ->callback_after_upload(array($this,'gera_miniatura'))
                    ->add_bolean_status_switcher('ATIVO',base_url()."manager/memorias/alterar_status/")
                    ->add_multiselect(base_url() .'manager/memorias/selecao_multipla/',true);
        
        $crud = $this->crud->render();
        
         $dd_data = array(
            'dd_state' => $this->crud->getState(),
            'dd_dropdowns' => array('NT_ESTADOS_ID',
                                    'NT_CIDADES_ID'),
            'dd_url' => array('',
                              base_url() . 'manager/memorias/buscacidade/'
                             ),
            'dd_ajax_loader' => base_url() . 'assets/img/ajax-loader.gif'
        );
        
        $crud->dropdown_setup = $dd_data;

        $data['crud'] = $crud;
        $this->load->view("manager/m_default/index", $data);
    }
    
    public function buscacidade($estado){
        $this->load->model("nt_global_cidades");
        $lista = $this->nt_global_cidades->getCidadesFromEstado($estado);
        $array = array();
        foreach ($lista as $row):
            $array[] = array("value" => $row['id'], "property" => $row['cidade']);
        endforeach;

        echo json_encode($array);
        exit();
    }
    
     function gera_miniatura($imagem){
        $this->load->library('wideimage');
        $img_mini = $this->config->item("local_disk_url") . "assets/uploads/nt_memorias/MIN".$imagem[0]->name;
        $path = $this->config->item('local_disk_url') . "assets/uploads/nt_memorias/".$imagem[0]->name;
        $this->wideimage->load($path)->resize(200, 150, 'fill')->saveToFile($img_mini, 90);
    }
    

}
